import java.util.Stack;

class MinStack1 {
    Stack<Integer> stack;
    Stack<Integer> stack2;




    public void push(int val) {
        stack.push(val);
        // if(stack2.empty()){
        //     stack2.push(val);
        // }else{
        //     if(stack2.peek() < val){
        //         stack2.push(val);
        //     }else{
        //         return;
        //     }
        // }
        stack2.push(Math.min(stack2.peek(), val));
    }

    public void pop() {
        stack.pop();
        stack2.pop();
    }

    public int top() {
        return stack.peek();
    }

    public int getMin() {
        return stack2.peek();
    }


}